[INFO] cloning repository https://github.com/attenuation/boringvpn
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/attenuation/boringvpn" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fattenuation%2Fboringvpn", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fattenuation%2Fboringvpn'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] cd3a0f0632846011072763099fb2515f2a1e4d2e
[INFO] checking attenuation/boringvpn against try#72f88fc4e9458f89516a0b8b0868f3718aec5b47 for pr-74989
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fattenuation%2Fboringvpn" "/workspace/builds/worker-13/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-13/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/attenuation/boringvpn on toolchain 72f88fc4e9458f89516a0b8b0868f3718aec5b47
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+72f88fc4e9458f89516a0b8b0868f3718aec5b47" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/attenuation/boringvpn
[INFO] finished tweaking git repo https://github.com/attenuation/boringvpn
[INFO] tweaked toml for git repo https://github.com/attenuation/boringvpn written to /workspace/builds/worker-13/source/Cargo.toml
[INFO] crate git repo https://github.com/attenuation/boringvpn already has a lockfile, it will not be regenerated
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+72f88fc4e9458f89516a0b8b0868f3718aec5b47" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr] error: the lock file /workspace/builds/worker-13/source/Cargo.lock needs to be updated but --locked was passed to prevent this
[INFO] [stderr] If you want to try to generate the lock file without accessing the network, use the --offline flag.
[INFO] the lockfile is outdated, regenerating it
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+72f88fc4e9458f89516a0b8b0868f3718aec5b47" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+72f88fc4e9458f89516a0b8b0868f3718aec5b47" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded ntapi v0.3.4
[INFO] [stderr]   Downloaded mio v0.7.0
[INFO] [stderr]   Downloaded dns-lookup v1.0.4
[INFO] [stderr]   Downloaded transient-hashmap v0.4.1
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+72f88fc4e9458f89516a0b8b0868f3718aec5b47" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] ac9aa4be6eaa9ba42ba287aac4fc1d0cec614142e78fb04ff52aa7bb92cecb3d
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "ac9aa4be6eaa9ba42ba287aac4fc1d0cec614142e78fb04ff52aa7bb92cecb3d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ac9aa4be6eaa9ba42ba287aac4fc1d0cec614142e78fb04ff52aa7bb92cecb3d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ac9aa4be6eaa9ba42ba287aac4fc1d0cec614142e78fb04ff52aa7bb92cecb3d", kill_on_drop: false }`
[INFO] [stdout] ac9aa4be6eaa9ba42ba287aac4fc1d0cec614142e78fb04ff52aa7bb92cecb3d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-13/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+72f88fc4e9458f89516a0b8b0868f3718aec5b47" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 7ad36e723e544e6179a1de3521e6c57369ec9b46efeb5d615e68e1edc73743d4
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "7ad36e723e544e6179a1de3521e6c57369ec9b46efeb5d615e68e1edc73743d4", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Checking cfg-if v0.1.10
[INFO] [stderr]    Compiling proc-macro2 v1.0.21
[INFO] [stderr]    Compiling unicode-xid v0.2.1
[INFO] [stderr]     Checking lazy_static v1.4.0
[INFO] [stderr]    Compiling log v0.4.11
[INFO] [stderr]    Compiling byteorder v1.3.4
[INFO] [stderr]    Compiling bitflags v1.2.1
[INFO] [stderr]     Checking unicode-width v0.1.8
[INFO] [stderr]     Checking regex-syntax v0.6.18
[INFO] [stderr]     Checking ansi_term v0.11.0
[INFO] [stderr]     Checking untrusted v0.6.2
[INFO] [stderr]     Checking vec_map v0.8.2
[INFO] [stderr]     Checking strsim v0.8.0
[INFO] [stderr]     Checking spin v0.5.2
[INFO] [stderr]     Checking transient-hashmap v0.4.1
[INFO] [stderr]    Compiling ring v0.14.6
[INFO] [stderr]    Compiling boringvpn v0.1.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Checking textwrap v0.11.0
[INFO] [stderr]     Checking getrandom v0.1.15
[INFO] [stderr]     Checking socket2 v0.3.15
[INFO] [stderr]     Checking thread_local v1.0.1
[INFO] [stderr]     Checking rand_core v0.5.1
[INFO] [stderr]     Checking clap v2.33.3
[INFO] [stderr]     Checking dns-lookup v1.0.4
[INFO] [stderr]     Checking rand_chacha v0.2.2
[INFO] [stderr] warning: src/c/tuntap.c: In function 'set_ip':
[INFO] [stderr] warning: src/c/tuntap.c:71:5: warning: format not a string literal and no format arguments [-Wformat-security]
[INFO] [stderr] warning:    71 |     printf(ip_addr);
[INFO] [stderr] warning:       |     ^~~~~~
[INFO] [stderr] warning: src/c/tuntap.c:72:5: warning: format not a string literal and no format arguments [-Wformat-security]
[INFO] [stderr] warning:    72 |     printf(netmask);
[INFO] [stderr] warning:       |     ^~~~~~
[INFO] [stderr] warning: src/c/tuntap.c:86:23: warning: passing argument 2 of 'inet_aton' from incompatible pointer type [-Wincompatible-pointer-types]
[INFO] [stderr] warning:    86 |     inet_aton(ip_addr,&sin.sin_addr.s_addr);
[INFO] [stderr] warning:       |                       ^~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] warning:       |                       |
[INFO] [stderr] warning:       |                       in_addr_t * {aka unsigned int *}
[INFO] [stderr] warning: In file included from src/c/tuntap.c:12:
[INFO] [stderr] warning: /usr/include/arpa/inet.h:73:57: note: expected 'struct in_addr *' but argument is of type 'in_addr_t *' {aka 'unsigned int *'}
[INFO] [stderr] warning:    73 | extern int inet_aton (const char *__cp, struct in_addr *__inp) __THROW;
[INFO] [stderr] warning:       |                                         ~~~~~~~~~~~~~~~~^~~~~
[INFO] [stderr] warning: src/c/tuntap.c:91:23: warning: passing argument 2 of 'inet_aton' from incompatible pointer type [-Wincompatible-pointer-types]
[INFO] [stderr] warning:    91 |     inet_aton(netmask,&sin.sin_addr.s_addr);
[INFO] [stderr] warning:       |                       ^~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] warning:       |                       |
[INFO] [stderr] warning:       |                       in_addr_t * {aka unsigned int *}
[INFO] [stderr] warning: In file included from src/c/tuntap.c:12:
[INFO] [stderr] warning: /usr/include/arpa/inet.h:73:57: note: expected 'struct in_addr *' but argument is of type 'in_addr_t *' {aka 'unsigned int *'}
[INFO] [stderr] warning:    73 | extern int inet_aton (const char *__cp, struct in_addr *__inp) __THROW;
[INFO] [stderr] warning:       |                                         ~~~~~~~~~~~~~~~~^~~~~
[INFO] [stderr]     Checking mio v0.7.0
[INFO] [stderr]     Checking rand v0.7.3
[INFO] [stderr]    Compiling quote v1.0.7
[INFO] [stderr]    Compiling syn v1.0.40
[INFO] [stderr]     Checking regex v1.3.9
[INFO] [stderr]     Checking env_logger v0.7.1
[INFO] [stderr]    Compiling serde_derive v1.0.116
[INFO] [stderr]     Checking serde v1.0.116
[INFO] [stderr]     Checking bincode v1.3.1
[INFO] [stdout] error[E0433]: failed to resolve: could not find `unix` in `mio`
[INFO] [stdout]    --> src/client.rs:159:26
[INFO] [stdout]     |
[INFO] [stdout] 159 |         let tunfd = mio::unix::EventedFd(&tun_rawfd);
[INFO] [stdout]     |                          ^^^^ could not find `unix` in `mio`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `PollOpt` in `mio`
[INFO] [stdout]    --> src/client.rs:178:71
[INFO] [stdout]     |
[INFO] [stdout] 178 |         poll.register(&tunfd, TUN_TOKEN, mio::Ready::readable(), mio::PollOpt::level()).expect("unable register TUN fd");
[INFO] [stdout]     |                                                                       ^^^^^^^ could not find `PollOpt` in `mio`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `PollOpt` in `mio`
[INFO] [stdout]    --> src/client.rs:179:73
[INFO] [stdout]     |
[INFO] [stdout] 179 |         poll.register(&sockfd, SOCK_TOKEN, mio::Ready::readable(), mio::PollOpt::level()).expect("unable register SOCK fd");
[INFO] [stdout]     |                                                                         ^^^^^^^ could not find `PollOpt` in `mio`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `unix` in `mio`
[INFO] [stdout]   --> src/server.rs:91:26
[INFO] [stdout]    |
[INFO] [stdout] 91 |         let tunfd = mio::unix::EventedFd(&tun_raw_fd);
[INFO] [stdout]    |                          ^^^^ could not find `unix` in `mio`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `PollOpt` in `mio`
[INFO] [stdout]    --> src/server.rs:101:73
[INFO] [stdout]     |
[INFO] [stdout] 101 |         poll.register(&sockfd, SOCK_TOKEN, mio::Ready::readable(), mio::PollOpt::level()).unwrap();
[INFO] [stdout]     |                                                                         ^^^^^^^ could not find `PollOpt` in `mio`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `PollOpt` in `mio`
[INFO] [stdout]    --> src/server.rs:102:71
[INFO] [stdout]     |
[INFO] [stdout] 102 |         poll.register(&tunfd, TUN_TOKEN, mio::Ready::readable(), mio::PollOpt::level()).unwrap();
[INFO] [stdout]     |                                                                       ^^^^^^^ could not find `PollOpt` in `mio`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `net` in `mio`
[INFO] [stdout]    --> src/client.rs:160:32
[INFO] [stdout]     |
[INFO] [stdout] 160 |         let sockfd = mio::net::UdpSocket::from_socket(socket).unwrap();
[INFO] [stdout]     |                                ^^^^^^^^^ not found in `mio::net`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 1   | use crate::client::UdpSocket;
[INFO] [stdout]     |
[INFO] [stdout] 1   | use std::net::UdpSocket;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `Ready` in `mio`
[INFO] [stdout]    --> src/client.rs:178:47
[INFO] [stdout]     |
[INFO] [stdout] 178 |         poll.register(&tunfd, TUN_TOKEN, mio::Ready::readable(), mio::PollOpt::level()).expect("unable register TUN fd");
[INFO] [stdout]     |                                               ^^^^^ not found in `mio`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 1   | use core::future::Ready;
[INFO] [stdout]     |
[INFO] [stdout] 1   | use crate::device::tests::thread::thread::env::sys::ext::net::sys_common::backtrace::backtrace_rs::symbolize::gimli::mystd::future::Ready;
[INFO] [stdout]     |
[INFO] [stdout] 1   | use std::future::Ready;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `Ready` in `mio`
[INFO] [stdout]    --> src/client.rs:179:49
[INFO] [stdout]     |
[INFO] [stdout] 179 |         poll.register(&sockfd, SOCK_TOKEN, mio::Ready::readable(), mio::PollOpt::level()).expect("unable register SOCK fd");
[INFO] [stdout]     |                                                 ^^^^^ not found in `mio`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 1   | use core::future::Ready;
[INFO] [stdout]     |
[INFO] [stdout] 1   | use crate::device::tests::thread::thread::env::sys::ext::net::sys_common::backtrace::backtrace_rs::symbolize::gimli::mystd::future::Ready;
[INFO] [stdout]     |
[INFO] [stdout] 1   | use std::future::Ready;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `net` in `mio`
[INFO] [stdout]   --> src/server.rs:95:32
[INFO] [stdout]    |
[INFO] [stdout] 95 |         let sockfd = mio::net::UdpSocket::bind(&addr).unwrap();
[INFO] [stdout]    |                                ^^^^^^^^^ not found in `mio::net`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]    |
[INFO] [stdout] 1  | use crate::server::UdpSocket;
[INFO] [stdout]    |
[INFO] [stdout] 1  | use std::net::UdpSocket;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `Ready` in `mio`
[INFO] [stdout]    --> src/server.rs:101:49
[INFO] [stdout]     |
[INFO] [stdout] 101 |         poll.register(&sockfd, SOCK_TOKEN, mio::Ready::readable(), mio::PollOpt::level()).unwrap();
[INFO] [stdout]     |                                                 ^^^^^ not found in `mio`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 1   | use core::future::Ready;
[INFO] [stdout]     |
[INFO] [stdout] 1   | use crate::device::tests::thread::thread::env::sys::ext::net::sys_common::backtrace::backtrace_rs::symbolize::gimli::mystd::future::Ready;
[INFO] [stdout]     |
[INFO] [stdout] 1   | use std::future::Ready;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `Ready` in `mio`
[INFO] [stdout]    --> src/server.rs:102:47
[INFO] [stdout]     |
[INFO] [stdout] 102 |         poll.register(&tunfd, TUN_TOKEN, mio::Ready::readable(), mio::PollOpt::level()).unwrap();
[INFO] [stdout]     |                                               ^^^^^ not found in `mio`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 1   | use core::future::Ready;
[INFO] [stdout]     |
[INFO] [stdout] 1   | use crate::device::tests::thread::thread::env::sys::ext::net::sys_common::backtrace::backtrace_rs::symbolize::gimli::mystd::future::Ready;
[INFO] [stdout]     |
[INFO] [stdout] 1   | use std::future::Ready;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `unix` in `mio`
[INFO] [stdout]    --> src/client.rs:159:26
[INFO] [stdout]     |
[INFO] [stdout] 159 |         let tunfd = mio::unix::EventedFd(&tun_rawfd);
[INFO] [stdout]     |                          ^^^^ could not find `unix` in `mio`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize`, `Serialize`
[INFO] [stdout]  --> src/main.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | use serde::{Serialize, Deserialize};
[INFO] [stdout]   |             ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `libc`
[INFO] [stdout]  --> src/main.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use libc;
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand`
[INFO] [stdout]  --> src/crypto.rs:1:31
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ring::{aead,pbkdf2,digest,rand};
[INFO] [stdout]   |                               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ring::rand::SecureRandom`
[INFO] [stdout]  --> src/crypto.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use ring::rand::SecureRandom;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize`, `Serialize`
[INFO] [stdout]  --> src/device.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | use serde::{Serialize, Deserialize};
[INFO] [stdout]   |             ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `IpAddr`, `Ipv4Addr`, `Ipv6Addr`
[INFO] [stdout]  --> src/device.rs:6:16
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::net::{IpAddr, Ipv4Addr, Ipv6Addr};
[INFO] [stdout]   |                ^^^^^^  ^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `thread`, `time`
[INFO] [stdout]    --> src/device.rs:116:15
[INFO] [stdout]     |
[INFO] [stdout] 116 |     use std::{thread, time};
[INFO] [stdout]     |               ^^^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Ipv6Addr`
[INFO] [stdout]  --> src/client.rs:2:34
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::net::{IpAddr, Ipv4Addr, Ipv6Addr, SocketAddr, UdpSocket};
[INFO] [stdout]   |                                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `CryptoData`
[INFO] [stdout]   --> src/client.rs:14:28
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::crypto::{Crypto,CryptoData,CryptoMethod};
[INFO] [stdout]    |                            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Ipv6Addr`, `UdpSocket`
[INFO] [stdout]  --> src/server.rs:2:34
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::net::{IpAddr, Ipv4Addr, Ipv6Addr, SocketAddr, UdpSocket};
[INFO] [stdout]   |                                  ^^^^^^^^              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `dns_lookup`
[INFO] [stdout]  --> src/server.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use dns_lookup;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `CryptoData`
[INFO] [stdout]   --> src/server.rs:15:28
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::crypto::{Crypto,CryptoData,CryptoMethod};
[INFO] [stdout]    |                            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Error`
[INFO] [stdout]  --> src/cli.rs:1:22
[INFO] [stdout]   |
[INFO] [stdout] 1 | use clap::{App, Arg, Error,SubCommand};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ffi::OsString`, `path::PathBuf`
[INFO] [stdout]  --> src/cli.rs:3:11
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::{ffi::OsString,path::PathBuf};
[INFO] [stdout]   |           ^^^^^^^^^^^^^ ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `IpAddr`, `Ipv4Addr`, `Ipv6Addr`
[INFO] [stdout]  --> src/cli.rs:4:16
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::net::{IpAddr,Ipv4Addr,Ipv6Addr};
[INFO] [stdout]   |                ^^^^^^ ^^^^^^^^ ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `PollOpt` in `mio`
[INFO] [stdout]    --> src/client.rs:178:71
[INFO] [stdout]     |
[INFO] [stdout] 178 |         poll.register(&tunfd, TUN_TOKEN, mio::Ready::readable(), mio::PollOpt::level()).expect("unable register TUN fd");
[INFO] [stdout]     |                                                                       ^^^^^^^ could not find `PollOpt` in `mio`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `PollOpt` in `mio`
[INFO] [stdout]    --> src/client.rs:179:73
[INFO] [stdout]     |
[INFO] [stdout] 179 |         poll.register(&sockfd, SOCK_TOKEN, mio::Ready::readable(), mio::PollOpt::level()).expect("unable register SOCK fd");
[INFO] [stdout]     |                                                                         ^^^^^^^ could not find `PollOpt` in `mio`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `unix` in `mio`
[INFO] [stdout]   --> src/server.rs:91:26
[INFO] [stdout]    |
[INFO] [stdout] 91 |         let tunfd = mio::unix::EventedFd(&tun_raw_fd);
[INFO] [stdout]    |                          ^^^^ could not find `unix` in `mio`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `PollOpt` in `mio`
[INFO] [stdout]    --> src/server.rs:101:73
[INFO] [stdout]     |
[INFO] [stdout] 101 |         poll.register(&sockfd, SOCK_TOKEN, mio::Ready::readable(), mio::PollOpt::level()).unwrap();
[INFO] [stdout]     |                                                                         ^^^^^^^ could not find `PollOpt` in `mio`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `PollOpt` in `mio`
[INFO] [stdout]    --> src/server.rs:102:71
[INFO] [stdout]     |
[INFO] [stdout] 102 |         poll.register(&tunfd, TUN_TOKEN, mio::Ready::readable(), mio::PollOpt::level()).unwrap();
[INFO] [stdout]     |                                                                       ^^^^^^^ could not find `PollOpt` in `mio`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `net` in `mio`
[INFO] [stdout]    --> src/client.rs:160:32
[INFO] [stdout]     |
[INFO] [stdout] 160 |         let sockfd = mio::net::UdpSocket::from_socket(socket).unwrap();
[INFO] [stdout]     |                                ^^^^^^^^^ not found in `mio::net`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 1   | use crate::client::UdpSocket;
[INFO] [stdout]     |
[INFO] [stdout] 1   | use std::net::UdpSocket;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `Ready` in `mio`
[INFO] [stdout]    --> src/client.rs:178:47
[INFO] [stdout]     |
[INFO] [stdout] 178 |         poll.register(&tunfd, TUN_TOKEN, mio::Ready::readable(), mio::PollOpt::level()).expect("unable register TUN fd");
[INFO] [stdout]     |                                               ^^^^^ not found in `mio`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 1   | use core::future::Ready;
[INFO] [stdout]     |
[INFO] [stdout] 1   | use crate::utils::process::imp::process_inner::sys::ext::net::sys_common::backtrace::backtrace_rs::symbolize::gimli::mystd::future::Ready;
[INFO] [stdout]     |
[INFO] [stdout] 1   | use std::future::Ready;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `Ready` in `mio`
[INFO] [stdout]    --> src/client.rs:179:49
[INFO] [stdout]     |
[INFO] [stdout] 179 |         poll.register(&sockfd, SOCK_TOKEN, mio::Ready::readable(), mio::PollOpt::level()).expect("unable register SOCK fd");
[INFO] [stdout]     |                                                 ^^^^^ not found in `mio`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 1   | use core::future::Ready;
[INFO] [stdout]     |
[INFO] [stdout] 1   | use crate::utils::process::imp::process_inner::sys::ext::net::sys_common::backtrace::backtrace_rs::symbolize::gimli::mystd::future::Ready;
[INFO] [stdout]     |
[INFO] [stdout] 1   | use std::future::Ready;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `net` in `mio`
[INFO] [stdout]   --> src/server.rs:95:32
[INFO] [stdout]    |
[INFO] [stdout] 95 |         let sockfd = mio::net::UdpSocket::bind(&addr).unwrap();
[INFO] [stdout]    |                                ^^^^^^^^^ not found in `mio::net`
[INFO] [stdout]    |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]    |
[INFO] [stdout] 1  | use crate::server::UdpSocket;
[INFO] [stdout]    |
[INFO] [stdout] 1  | use std::net::UdpSocket;
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `Ready` in `mio`
[INFO] [stdout]    --> src/server.rs:101:49
[INFO] [stdout]     |
[INFO] [stdout] 101 |         poll.register(&sockfd, SOCK_TOKEN, mio::Ready::readable(), mio::PollOpt::level()).unwrap();
[INFO] [stdout]     |                                                 ^^^^^ not found in `mio`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 1   | use core::future::Ready;
[INFO] [stdout]     |
[INFO] [stdout] 1   | use crate::utils::process::imp::process_inner::sys::ext::net::sys_common::backtrace::backtrace_rs::symbolize::gimli::mystd::future::Ready;
[INFO] [stdout]     |
[INFO] [stdout] 1   | use std::future::Ready;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `Ready` in `mio`
[INFO] [stdout]    --> src/server.rs:102:47
[INFO] [stdout]     |
[INFO] [stdout] 102 |         poll.register(&tunfd, TUN_TOKEN, mio::Ready::readable(), mio::PollOpt::level()).unwrap();
[INFO] [stdout]     |                                               ^^^^^ not found in `mio`
[INFO] [stdout]     |
[INFO] [stdout] help: consider importing one of these items
[INFO] [stdout]     |
[INFO] [stdout] 1   | use core::future::Ready;
[INFO] [stdout]     |
[INFO] [stdout] 1   | use crate::utils::process::imp::process_inner::sys::ext::net::sys_common::backtrace::backtrace_rs::symbolize::gimli::mystd::future::Ready;
[INFO] [stdout]     |
[INFO] [stdout] 1   | use std::future::Ready;
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize`, `Serialize`
[INFO] [stdout]  --> src/main.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | use serde::{Serialize, Deserialize};
[INFO] [stdout]   |             ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `libc`
[INFO] [stdout]  --> src/main.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use libc;
[INFO] [stdout]   |     ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `rand`
[INFO] [stdout]  --> src/crypto.rs:1:31
[INFO] [stdout]   |
[INFO] [stdout] 1 | use ring::{aead,pbkdf2,digest,rand};
[INFO] [stdout]   |                               ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `ring::rand::SecureRandom`
[INFO] [stdout]  --> src/crypto.rs:3:5
[INFO] [stdout]   |
[INFO] [stdout] 3 | use ring::rand::SecureRandom;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Deserialize`, `Serialize`
[INFO] [stdout]  --> src/device.rs:1:13
[INFO] [stdout]   |
[INFO] [stdout] 1 | use serde::{Serialize, Deserialize};
[INFO] [stdout]   |             ^^^^^^^^^  ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `IpAddr`, `Ipv4Addr`, `Ipv6Addr`
[INFO] [stdout]  --> src/device.rs:6:16
[INFO] [stdout]   |
[INFO] [stdout] 6 | use std::net::{IpAddr, Ipv4Addr, Ipv6Addr};
[INFO] [stdout]   |                ^^^^^^  ^^^^^^^^  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Ipv6Addr`
[INFO] [stdout]  --> src/client.rs:2:34
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::net::{IpAddr, Ipv4Addr, Ipv6Addr, SocketAddr, UdpSocket};
[INFO] [stdout]   |                                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `CryptoData`
[INFO] [stdout]   --> src/client.rs:14:28
[INFO] [stdout]    |
[INFO] [stdout] 14 | use crate::crypto::{Crypto,CryptoData,CryptoMethod};
[INFO] [stdout]    |                            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Ipv6Addr`, `UdpSocket`
[INFO] [stdout]  --> src/server.rs:2:34
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::net::{IpAddr, Ipv4Addr, Ipv6Addr, SocketAddr, UdpSocket};
[INFO] [stdout]   |                                  ^^^^^^^^              ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `dns_lookup`
[INFO] [stdout]  --> src/server.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use dns_lookup;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `CryptoData`
[INFO] [stdout]   --> src/server.rs:15:28
[INFO] [stdout]    |
[INFO] [stdout] 15 | use crate::crypto::{Crypto,CryptoData,CryptoMethod};
[INFO] [stdout]    |                            ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Error`
[INFO] [stdout]  --> src/cli.rs:1:22
[INFO] [stdout]   |
[INFO] [stdout] 1 | use clap::{App, Arg, Error,SubCommand};
[INFO] [stdout]   |                      ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `ffi::OsString`, `path::PathBuf`
[INFO] [stdout]  --> src/cli.rs:3:11
[INFO] [stdout]   |
[INFO] [stdout] 3 | use std::{ffi::OsString,path::PathBuf};
[INFO] [stdout]   |           ^^^^^^^^^^^^^ ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `IpAddr`, `Ipv4Addr`, `Ipv6Addr`
[INFO] [stdout]  --> src/cli.rs:4:16
[INFO] [stdout]   |
[INFO] [stdout] 4 | use std::net::{IpAddr,Ipv4Addr,Ipv6Addr};
[INFO] [stdout]   |                ^^^^^^ ^^^^^^^^ ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `core::str::<impl str>::trim_right`: superseded by `trim_end`
[INFO] [stdout]   --> src/utils.rs:32:54
[INFO] [stdout]    |
[INFO] [stdout] 32 |         Ok(String::from_utf8(output.stdout).unwrap().trim_right().to_string())
[INFO] [stdout]    |                                                      ^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `core::str::<impl str>::trim_right`: superseded by `trim_end`
[INFO] [stdout]    --> src/utils.rs:154:54
[INFO] [stdout]     |
[INFO] [stdout] 154 |         Ok(String::from_utf8(output.stdout).unwrap().trim_right().to_string())
[INFO] [stdout]     |                                                      ^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `core::str::<impl str>::trim_right`: superseded by `trim_end`
[INFO] [stdout]   --> src/utils.rs:32:54
[INFO] [stdout]    |
[INFO] [stdout] 32 |         Ok(String::from_utf8(output.stdout).unwrap().trim_right().to_string())
[INFO] [stdout]    |                                                      ^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `core::str::<impl str>::trim_right`: superseded by `trim_end`
[INFO] [stdout]    --> src/utils.rs:154:54
[INFO] [stdout]     |
[INFO] [stdout] 154 |         Ok(String::from_utf8(output.stdout).unwrap().trim_right().to_string())
[INFO] [stdout]     |                                                      ^^^^^^^^^^ help: replace the use of the deprecated associated function: `trim_end`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `new` found for struct `mio::Poll` in the current scope
[INFO] [stdout]    --> src/client.rs:177:31
[INFO] [stdout]     |
[INFO] [stdout] 177 |         let poll = mio::Poll::new().unwrap();
[INFO] [stdout]     |                               ^^^ function or associated item not found in `mio::Poll`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/client.rs:232:9
[INFO] [stdout]     |
[INFO] [stdout] 184 | /         loop {
[INFO] [stdout] 185 | |             poll.poll(&mut events, None).expect("poll failed");
[INFO] [stdout] 186 | |             for event in events.iter() {
[INFO] [stdout] 187 | |                 match event.token() {
[INFO] [stdout] ...   |
[INFO] [stdout] 230 | |             }
[INFO] [stdout] 231 | |         }
[INFO] [stdout]     | |_________- any code following this expression is unreachable
[INFO] [stdout] 232 |           Ok(())
[INFO] [stdout]     |           ^^^^^^ unreachable expression
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `new` found for struct `mio::Poll` in the current scope
[INFO] [stdout]   --> src/server.rs:98:31
[INFO] [stdout]    |
[INFO] [stdout] 98 |         let poll = mio::Poll::new().unwrap();
[INFO] [stdout]    |                               ^^^ function or associated item not found in `mio::Poll`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/server.rs:219:9
[INFO] [stdout]     |
[INFO] [stdout] 116 | /         loop {
[INFO] [stdout] 117 | |             // available_ids.append(&mut client_info.prune());
[INFO] [stdout] 118 | |             poll.poll(&mut events, None).expect("poll failed");
[INFO] [stdout] 119 | |             for event in events.iter() {
[INFO] [stdout] ...   |
[INFO] [stdout] 217 | |
[INFO] [stdout] 218 | |         }
[INFO] [stdout]     | |_________- any code following this expression is unreachable
[INFO] [stdout] 219 |           Ok(())
[INFO] [stdout]     |           ^^^^^^ unreachable expression
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `new` found for struct `mio::Poll` in the current scope
[INFO] [stdout]    --> src/client.rs:177:31
[INFO] [stdout]     |
[INFO] [stdout] 177 |         let poll = mio::Poll::new().unwrap();
[INFO] [stdout]     |                               ^^^ function or associated item not found in `mio::Poll`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/client.rs:232:9
[INFO] [stdout]     |
[INFO] [stdout] 184 | /         loop {
[INFO] [stdout] 185 | |             poll.poll(&mut events, None).expect("poll failed");
[INFO] [stdout] 186 | |             for event in events.iter() {
[INFO] [stdout] 187 | |                 match event.token() {
[INFO] [stdout] ...   |
[INFO] [stdout] 230 | |             }
[INFO] [stdout] 231 | |         }
[INFO] [stdout]     | |_________- any code following this expression is unreachable
[INFO] [stdout] 232 |           Ok(())
[INFO] [stdout]     |           ^^^^^^ unreachable expression
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unreachable_code)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Write`
[INFO] [stdout]  --> src/types.rs:2:21
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::io::{self, Write};
[INFO] [stdout]   |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 14 previous errors; 20 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0433, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0433`.
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no function or associated item named `new` found for struct `mio::Poll` in the current scope
[INFO] [stdout]   --> src/server.rs:98:31
[INFO] [stdout]    |
[INFO] [stdout] 98 |         let poll = mio::Poll::new().unwrap();
[INFO] [stdout]    |                               ^^^ function or associated item not found in `mio::Poll`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] The following warnings were emitted during compilation:
[INFO] [stdout] warning: unreachable expression
[INFO] [stdout]    --> src/server.rs:219:9
[INFO] [stdout]     |
[INFO] [stdout] 116 | /         loop {
[INFO] [stdout] 117 | |             // available_ids.append(&mut client_info.prune());
[INFO] [stdout] 118 | |             poll.poll(&mut events, None).expect("poll failed");
[INFO] [stdout] 119 | |             for event in events.iter() {
[INFO] [stdout] ...   |
[INFO] [stdout] 217 | |
[INFO] [stdout] 218 | |         }
[INFO] [stdout]     | |_________- any code following this expression is unreachable
[INFO] [stdout] 219 |           Ok(())
[INFO] [stdout]     |           ^^^^^^ unreachable expression
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] 
[INFO] [stderr] warning: src/c/tuntap.c: In function 'set_ip':
[INFO] [stderr] warning: src/c/tuntap.c:71:5: warning: format not a string literal and no format arguments [-Wformat-security]
[INFO] [stderr] warning:    71 |     printf(ip_addr);
[INFO] [stderr] warning:       |     ^~~~~~
[INFO] [stderr] warning: src/c/tuntap.c:72:5: warning: format not a string literal and no format arguments [-Wformat-security]
[INFO] [stderr] warning:    72 |     printf(netmask);
[INFO] [stderr] warning:       |     ^~~~~~
[INFO] [stderr] warning: src/c/tuntap.c:86:23: warning: passing argument 2 of 'inet_aton' from incompatible pointer type [-Wincompatible-pointer-types]
[INFO] [stderr] warning:    86 |     inet_aton(ip_addr,&sin.sin_addr.s_addr);
[INFO] [stderr] warning:       |                       ^~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] warning:       |                       |
[INFO] [stderr] warning:       |                       in_addr_t * {aka unsigned int *}
[INFO] [stderr] warning: In file included from src/c/tuntap.c:12:
[INFO] [stderr] warning: /usr/include/arpa/inet.h:73:57: note: expected 'struct in_addr *' but argument is of type 'in_addr_t *' {aka 'unsigned int *'}
[INFO] [stderr] warning:    73 | extern int inet_aton (const char *__cp, struct in_addr *__inp) __THROW;
[INFO] [stderr] warning:       |                                         ~~~~~~~~~~~~~~~~^~~~~
[INFO] [stderr] warning: src/c/tuntap.c:91:23: warning: passing argument 2 of 'inet_aton' from incompatible pointer type [-Wincompatible-pointer-types]
[INFO] [stderr] warning:    91 |     inet_aton(netmask,&sin.sin_addr.s_addr);
[INFO] [stderr] warning:       |                       ^~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] warning:       |                       |
[INFO] [stderr] warning:       |                       in_addr_t * {aka unsigned int *}
[INFO] [stderr] warning: In file included from src/c/tuntap.c:12:
[INFO] [stderr] warning: /usr/include/arpa/inet.h:73:57: note: expected 'struct in_addr *' but argument is of type 'in_addr_t *' {aka 'unsigned int *'}
[INFO] [stderr] warning:    73 | extern int inet_aton (const char *__cp, struct in_addr *__inp) __THROW;
[INFO] [stderr] warning:       |                                         ~~~~~~~~~~~~~~~~^~~~~
[INFO] [stderr] 
[INFO] [stderr] error: could not compile `boringvpn`.
[INFO] [stderr] 
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] warning: unused import: `Write`
[INFO] [stdout]  --> src/types.rs:2:21
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::io::{self, Write};
[INFO] [stdout]   |                     ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 14 previous errors; 19 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0433, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0433`.
[INFO] [stdout] 
[INFO] [stderr] The following warnings were emitted during compilation:
[INFO] [stderr] 
[INFO] [stderr] warning: src/c/tuntap.c: In function 'set_ip':
[INFO] [stderr] warning: src/c/tuntap.c:71:5: warning: format not a string literal and no format arguments [-Wformat-security]
[INFO] [stderr] warning:    71 |     printf(ip_addr);
[INFO] [stderr] warning:       |     ^~~~~~
[INFO] [stderr] warning: src/c/tuntap.c:72:5: warning: format not a string literal and no format arguments [-Wformat-security]
[INFO] [stderr] warning:    72 |     printf(netmask);
[INFO] [stderr] warning:       |     ^~~~~~
[INFO] [stderr] warning: src/c/tuntap.c:86:23: warning: passing argument 2 of 'inet_aton' from incompatible pointer type [-Wincompatible-pointer-types]
[INFO] [stderr] warning:    86 |     inet_aton(ip_addr,&sin.sin_addr.s_addr);
[INFO] [stderr] warning:       |                       ^~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] warning:       |                       |
[INFO] [stderr] warning:       |                       in_addr_t * {aka unsigned int *}
[INFO] [stderr] warning: In file included from src/c/tuntap.c:12:
[INFO] [stderr] warning: /usr/include/arpa/inet.h:73:57: note: expected 'struct in_addr *' but argument is of type 'in_addr_t *' {aka 'unsigned int *'}
[INFO] [stderr] warning:    73 | extern int inet_aton (const char *__cp, struct in_addr *__inp) __THROW;
[INFO] [stderr] warning:       |                                         ~~~~~~~~~~~~~~~~^~~~~
[INFO] [stderr] warning: src/c/tuntap.c:91:23: warning: passing argument 2 of 'inet_aton' from incompatible pointer type [-Wincompatible-pointer-types]
[INFO] [stderr] warning:    91 |     inet_aton(netmask,&sin.sin_addr.s_addr);
[INFO] [stderr] warning:       |                       ^~~~~~~~~~~~~~~~~~~~
[INFO] [stderr] warning:       |                       |
[INFO] [stderr] warning:       |                       in_addr_t * {aka unsigned int *}
[INFO] [stderr] warning: In file included from src/c/tuntap.c:12:
[INFO] [stderr] warning: /usr/include/arpa/inet.h:73:57: note: expected 'struct in_addr *' but argument is of type 'in_addr_t *' {aka 'unsigned int *'}
[INFO] [stderr] warning:    73 | extern int inet_aton (const char *__cp, struct in_addr *__inp) __THROW;
[INFO] [stderr] warning:       |                                         ~~~~~~~~~~~~~~~~^~~~~
[INFO] [stderr] 
[INFO] [stderr] error: build failed
[INFO] running `Command { std: "docker" "inspect" "7ad36e723e544e6179a1de3521e6c57369ec9b46efeb5d615e68e1edc73743d4", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "7ad36e723e544e6179a1de3521e6c57369ec9b46efeb5d615e68e1edc73743d4", kill_on_drop: false }`
[INFO] [stdout] 7ad36e723e544e6179a1de3521e6c57369ec9b46efeb5d615e68e1edc73743d4
